using System;
using System.Runtime.Serialization;

namespace SharpObjects.Shared
{
    [Serializable]
    [DataContract] 
    public class LogCategoryName
    {
        [DataMember]
        public string Name { get; set; }

        public LogCategoryName(string name)
        {
            this.Name = name;
        }

        public static implicit operator string (LogCategoryName logCategoryName)
        {
            return logCategoryName.Name;
        }

        public static readonly LogCategoryName DEBUG = new LogCategoryName("DEBUG");
        public static readonly LogCategoryName INFO = new LogCategoryName("INFO");
        public static readonly LogCategoryName WARNING = new LogCategoryName("WARNING");
        public static readonly LogCategoryName ERROR = new LogCategoryName("ERROR");

    }
}